/*
 * 版权所有 (C) 2015 知启蒙(ZHIQIM) 保留所有权利。
 * 
 * 欢迎到知启蒙网站（https://www.zhiqim.com）购买正版软件，知启蒙还提供许多开源框架和软件。
 * 
 * 1、本软件产品所有源代码受《中华人民共和国著作权法》和其他有关法律、法规的保护，其所有知识产权归湖南知启蒙科技有限公司所有；
 * 2、禁止复制和修改。不得复制修改、翻译或改编本软件所有源代码，或者基于本软件产品创作衍生作品；
 * 3、禁止进行逆向工程。不得对本软件的源代码进行逆向工程、反编译或试图以其他方式发现软件的源代码；
 * 4、个别授权：如需进行商业性的销售、复制、分发，包括但不限于软件销售、预装、捆绑等，必须获得知启蒙的书面授权和许可；
 * 5、保留权利：本注释未明示授权的其他一切权利仍归知启蒙所有，任何人使用其他权利时必须获得知启蒙的书面同意。
*/
package net.redxyz.top.dbo.user;

import java.io.Serializable;

import org.zhiqim.kernel.annotation.AnAlias;
import org.zhiqim.kernel.annotation.AnNew;
import org.zhiqim.kernel.json.Jsons;
import org.zhiqim.orm.annotation.*;

/**
 * 客户订购表 对应表《USER_ORDER》
 */
@AnAlias("UserOrder")
@AnNew
@AnTable(table="USER_ORDER", key="ORDER_ID", type="MyISAM")
@AnIndex({@AnIndexValue(name="IX_USER_ORDER_QUERY", column="NICK,ORDER_ID", unique=false)})
public class UserOrder implements Serializable
{
    private static final long serialVersionUID = 1L;

    @AnTableField(column="BIZ_ORDER_ID", type="long", notNull=true)    private long bizOrderId;    //1.订单号 
    @AnTableField(column="ORDER_ID", type="long", notNull=true)    private long orderId;    //2.子订单号
    @AnTableField(column="NICK", type="string,50", notNull=true)    private String nick;    //3.用户昵称
    @AnTableField(column="VERSION_NO", type="byte", notNull=true)    private int versionNo;    //4.订购版本号,0表示试用版,1表示标准版，2表示尊享版
    @AnTableField(column="ITEM_CODE", type="string,50", notNull=true)    private String itemCode;    //5.收费代码
    @AnTableField(column="ORDER_TIME", type="string,19,char", notNull=true)    private String orderTime;    //6.订购时间,格式：yyyy-MM-dd HH:mm:ss
    @AnTableField(column="ORDER_CYCLE", type="string,20", notNull=true)    private String orderCycle;    //7.订购周期
    @AnTableField(column="BEGIN_TIME", type="string,19,char", notNull=true)    private String beginTime;    //8.使用开始日期：yyyy-MM-dd HH:mm:ss
    @AnTableField(column="END_TIME", type="string,19,char", notNull=true)    private String endTime;    //9.使用结束日期：yyyy-MM-dd HH:mm:ss
    @AnTableField(column="BIZ_TYPE", type="byte", notNull=true)    private int bizType;    //10.订单类型1=新订 2=续订 3=升级 4=后台赠送 5=后台自动续订 6=订单审核后生成订购关系（暂时用不到） 
    @AnTableField(column="FEE", type="string,10", notNull=true)    private String fee;    //11.原价（单位为分）
    @AnTableField(column="PROM_FEE", type="string,10", notNull=true)    private String promFee;    //12.优惠（单位为分）
    @AnTableField(column="REFUND_FEE", type="string,10", notNull=true)    private String refundFee;    //13.退款（单位为分；升级时，系统会将升级前老版本按照剩余订购天数退还剩余金额） 
    @AnTableField(column="TOTAL_PAY_FEE", type="string,10", notNull=true)    private String totalPayFee;    //14.实付（单位为分） 
    @AnTableField(column="ACTIVITY_CODE", type="string,256", notNull=false)    private String activityCode;    //15.活动代码
    @AnTableField(column="RECORD_ID", type="string,32", notNull=false)    private String recordId;    //16.兑换积分编号，=NULL表示未兑换，否则取RECORD_ID

    public String toString()
    {
        return Jsons.toString(this);
    }

    public long getBizOrderId()
    {
        return bizOrderId;
    }

    public void setBizOrderId(long bizOrderId)
    {
        this.bizOrderId = bizOrderId;
    }

    public long getOrderId()
    {
        return orderId;
    }

    public void setOrderId(long orderId)
    {
        this.orderId = orderId;
    }

    public String getNick()
    {
        return nick;
    }

    public void setNick(String nick)
    {
        this.nick = nick;
    }

    public int getVersionNo()
    {
        return versionNo;
    }

    public void setVersionNo(int versionNo)
    {
        this.versionNo = versionNo;
    }

    public String getItemCode()
    {
        return itemCode;
    }

    public void setItemCode(String itemCode)
    {
        this.itemCode = itemCode;
    }

    public String getOrderTime()
    {
        return orderTime;
    }

    public void setOrderTime(String orderTime)
    {
        this.orderTime = orderTime;
    }

    public String getOrderCycle()
    {
        return orderCycle;
    }

    public void setOrderCycle(String orderCycle)
    {
        this.orderCycle = orderCycle;
    }

    public String getBeginTime()
    {
        return beginTime;
    }

    public void setBeginTime(String beginTime)
    {
        this.beginTime = beginTime;
    }

    public String getEndTime()
    {
        return endTime;
    }

    public void setEndTime(String endTime)
    {
        this.endTime = endTime;
    }

    public int getBizType()
    {
        return bizType;
    }

    public void setBizType(int bizType)
    {
        this.bizType = bizType;
    }

    public String getFee()
    {
        return fee;
    }

    public void setFee(String fee)
    {
        this.fee = fee;
    }

    public String getPromFee()
    {
        return promFee;
    }

    public void setPromFee(String promFee)
    {
        this.promFee = promFee;
    }

    public String getRefundFee()
    {
        return refundFee;
    }

    public void setRefundFee(String refundFee)
    {
        this.refundFee = refundFee;
    }

    public String getTotalPayFee()
    {
        return totalPayFee;
    }

    public void setTotalPayFee(String totalPayFee)
    {
        this.totalPayFee = totalPayFee;
    }

    public String getActivityCode()
    {
        return activityCode;
    }

    public void setActivityCode(String activityCode)
    {
        this.activityCode = activityCode;
    }

    public String getRecordId()
    {
        return recordId;
    }

    public void setRecordId(String recordId)
    {
        this.recordId = recordId;
    }

}
